package com.design.pattern.command.projection;

/**
 * 主持人
 */
public class Host {
    private Loudspeaker loudspeaker;// 主持人讲话的时候,需要使用到喇叭,所以持有一个喇叭实例.
    private String commandContent;//具体命令的文字描述

    public Host(Loudspeaker loudspeaker,String commandContent) {
        this.loudspeaker = loudspeaker;
        this.commandContent=commandContent;
    }

    /**
     * 主持人创建命令
     *
     * @return
     */
   private Command createCommand() {
        return new Command().setContent(commandContent);
    }

    /**
     * 广播命令
     */
    void sendCommand(){
        this.loudspeaker.spreadTheOrder(createCommand());
    }
}
